home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #056 (1990)(Amiga User Group Deutschland e.V.).zip / Franz PD Disk #056 (1990)(Amiga User Group Deutschland e.V.).adf / Lotto / LottoV3.5 (.txt) < prev    next >
AmigaBASIC Source Code  |  1989-07-02  |  9KB  |  466 lines

  1. '                   Lotto 6 aus 49    Version 3.5
  2.  
  3. '                   © 1989 by
  4.  
  5. '                   Jens Wilnat
  6. '                   Berliner Str. 31
  7. '                   3000 Hannover 91
  8. '                   Tel. 0511/467066
  9.  
  10. '                   Thanks to HJH 
  11.  
  12. '  Dies ist die Version 3.5 meines Lottoprogramms.
  13. '  Ich glaube das Programm ist jetzt fertig.
  14. '  Wenn es noch Fehler hat dann lasst es mich bitte wissen.
  15. '  Wenn Ihr gewinnt könnt Ihr mir ja etwas davon abgeben.
  16. '
  17. '  Good luck ! ! !
  18.  
  19. '  J.U.W.  14.05.89    23:45 Uhr
  20.  
  21. '   P.S.  Falls die Datei nicht aktuell ist:
  22.  
  23. '   In der Zeitung "mach mit" vom Lottoverband findet Ihr die benötigten
  24. '   Daten. Die Zeitung gibt es kostenlos in jeder Lottoannahmestelle.
  25.  
  26. '   Dann mit Neuerfassung <F1> alle Daten eingeben.
  27.  
  28.  
  29. OPEN"R",#1,"daten-lotto"
  30. FIELD #1,3 AS L$,3 AS h$
  31.  
  32.  
  33.  
  34.  
  35.  
  36. start:
  37.  
  38. CLS
  39. PRINT
  40. PRINT TAB(30) "L O T T O  -  6 aus 49"
  41. PRINT " © 1989 by J.U.W."
  42. PRINT TAB(30)"F1        Neuerfassung"
  43. PRINT " Thanks to HJH"
  44. PRINT TAB(30)"F2        Aktualisieren"
  45. PRINT
  46. PRINT TAB(30)"F3        Ausgabe der Gewinnzahlen"
  47. PRINT
  48. PRINT TAB(30)"F4        Ändern einzelner Zahlen"
  49. PRINT
  50. PRINT TAB(30)"F5        Ausgabe aller Zahlen"
  51. PRINT
  52. PRINT TAB(30)"F6        Ausgabe einzelner Zahlen"
  53. PRINT
  54. PRINT TAB(30)"F7        Ausgabe der zuletzt gezogenen Zahlen"       
  55. PRINT
  56. PRINT TAB(30)"F8        Autor"
  57. PRINT
  58. PRINT TAB(30)"F9        Info"
  59. PRINT
  60. PRINT TAB(30)"F10       Ende"
  61.  
  62.  
  63. tastaturabfrage:
  64. a$=INKEY$
  65. IF LEN(a$)<>0 THEN a=ASC(a$)
  66. IF a$="" THEN tastaturabfrage
  67. IF a < 129 OR a> 138 THEN tastaturabfrage
  68. ON a-128 GOTO f1,f2,f3,f4,f5,f6,f7,f8,f9,F10
  69. GOTO tastaturabfrage
  70.  
  71.  
  72. f2:
  73. 500 REM neue Zahlen
  74. FOR i = 1TO 49
  75. GET #1,i
  76. lz%=CVI (L$) +1
  77. LSET L$= MKI$(lz%)
  78. PUT #1,i
  79. NEXT
  80.  
  81.  
  82.  
  83.  
  84. CLS:PRINT:PRINT
  85.  
  86. PRINT
  87.  
  88. INPUT "Erste gezogene Zahl";a
  89. INPUT "Zweite gezogene Zahl";b
  90. INPUT "Dritte gezogene Zahl";c
  91. INPUT "Vierte gezogene Zahl";d
  92. INPUT "Fünfte gezogene Zahl";e
  93. INPUT "Sechste gezogene Zahl";f
  94.  
  95. GET #1,50
  96. ha%=CVI (h$) +1
  97. LSET h$= MKI$ (ha%)
  98. PUT #1,50
  99. PRINT:PRINT:
  100. PRINT "Erste Zahl",a
  101. satz%=a
  102. GET #1, satz%
  103. ha%=CVI (h$) +1:lz%=0
  104. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  105. PUT #1,satz%
  106. PRINT "Zweite Zahl",b
  107. satz%=b
  108. GET #1, satz%
  109. ha%=CVI (h$) +1:lz%=0
  110. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  111. PUT #1,satz%
  112. PRINT"Dritte Zahl",c
  113. satz%=c
  114. GET #1, satz%
  115. ha%=CVI (h$) +1:lz%=0
  116. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  117. PUT #1,satz%
  118. PRINT"Vierte Zahl",d
  119. satz%=d
  120. GET #1, satz%
  121. ha%=CVI (h$) +1:lz%=0
  122. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  123. PUT #1,satz%
  124. PRINT"Fünfte Zahl",e
  125. satz%=e
  126. GET #1,satz%
  127. ha%=CVI (h$) +1:lz%=0
  128. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  129. PUT #1,satz%
  130. PRINT"Sechste Zahl",f
  131. satz%=f
  132. GET #1, satz%
  133. ha%=CVI (h$) +1:lz%=0
  134. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  135. PUT #1,satz%
  136. GOTO start
  137. f3:
  138. 600 REM seltenste Zahl ausgeben
  139.  
  140. haeuf(1)=999:haeuf(2)=999:haeuf(3)=999:haeuf(4)=999:haeuf(5)=999:haeuf(6)=999
  141.  
  142. CLS:PRINT:PRINT
  143. LOCATE 10,10:PRINT"Bitte warten"
  144. FOR i=1 TO 49
  145. GET #1,i
  146. IF CVI(h$)<haeuf(1) THEN haeuf(1)=CVI(h$):z(1)=i
  147. NEXT
  148. FOR i=1 TO 49
  149. GET #1,i
  150. IF CVI(h$)<haeuf(2) AND i<>z(1) THEN haeuf(2)=CVI(h$):z(2)=i
  151. NEXT
  152. FOR i=1 TO 49
  153. GET #1,i
  154. IF CVI(h$)<haeuf(3) AND i<>z(1) AND i<>z(2) THEN haeuf(3)=CVI(h$):z(3)=i
  155. NEXT
  156. FOR i=1 TO 49
  157. GET #1,i
  158. IF CVI(h$)<haeuf(4) AND i<>z(1) AND i<>z(2) AND i<>z(3) THEN haeuf(4)=CVI(h$):z(4)=i
  159. NEXT
  160. FOR i=1 TO 49
  161. GET #1,i
  162. IF CVI(h$)<haeuf(5) AND i<>z(1) AND i<>z(2) AND i<>z(3) AND i<>z(4) THEN haeuf(5)=CVI(h$):z(5)=i
  163. NEXT
  164. FOR i=1 TO 49
  165. GET #1,i
  166. IF CVI(h$)<haeuf(6) AND i<>z(1) AND i<>z(2) AND i<>z(3) AND i<>z(4) AND i<>z(5) THEN haeuf(6)=CVI(h$):z(6)=i
  167. NEXT
  168. GOSUB sort1
  169. CLS
  170. GET #1,50
  171. PRINT:PRINT:PRINT"Die vorausichtlichen Gewinnzahlen für die";CVI(h$)+1;". Woche:"
  172. PRINT: PRINT:PRINT
  173. PRINT:PRINT"Die am seltensten gezogenen Zahlen: "
  174. PRINT:PRINT z(1);z(2);z(3);z(4);z(5);z(6)
  175. PRINT:PRINT
  176.  
  177. :PRINT
  178.  
  179.  
  180.  
  181. FOR i=1 TO 49
  182. GET #1,i
  183. IF CVI(L$)>laz(1) THEN laz(1)=CVI(L$):lz(1)=i
  184. NEXT
  185. FOR i=1 TO 49
  186. GET #1,i
  187. IF CVI(L$)>laz(2) AND i<>lz(1) THEN laz(2)=CVI(L$):lz(2)=i
  188. NEXT
  189. FOR i=1 TO 49
  190. GET #1,i
  191. IF CVI(L$)>laz(3) AND i<>lz(1) AND i<>lz(2) THEN laz(3)=CVI(L$):lz(3)=i
  192. NEXT
  193. FOR i=1 TO 49
  194. GET #1,i
  195. IF CVI(L$)>laz(4) AND i<>lz(1) AND i<>lz(2) AND i<>lz(3) THEN laz(4)=CVI(L$):lz(4)=i
  196. NEXT
  197. FOR i=1 TO 49
  198. GET #1,i
  199. IF CVI(L$)>laz(5) AND i<>lz(1) AND i<>lz(2) AND i<>lz(3) AND i<>lz(4) THEN laz(5)=CVI(L$):lz(5)=i
  200. NEXT
  201. FOR i=1 TO 49
  202. GET #1,i
  203. IF CVI(L$)>laz(6) AND i<>lz(1) AND i<>lz(2) AND i<>lz(3) AND i<>lz(4) AND i<>lz(5) THEN laz(6)=CVI(L$):lz(6)=i
  204. NEXT
  205. GOSUB sort2
  206. PRINT:PRINT"Die am längsten nicht mehr gezogenen Zahlen: "
  207. PRINT:PRINT lz(1);lz(2);lz(3);lz(4);lz(5);lz(6)
  208. PRINT:PRINT
  209. INPUT"<Return>",ffff$
  210.  
  211. yy3:
  212. CLS
  213. LOCATE 10,30
  214. PRINT "<F1>    Druckerausgabe"
  215. PRINT
  216. PRINT TAB(30) "<F10>   zurück zum Menü"
  217. xxx3:
  218. a$=INKEY$
  219. IF LEN(a$)<>0 THEN a=ASC(a$)
  220. IF a$="" THEN xxx3
  221. IF a <> 129 AND a<> 138 THEN xxx3
  222. IF a = 129 THEN drucker2
  223. IF a = 138 THEN start
  224. GOTO xxx3
  225.  
  226.  
  227.  
  228.  
  229. f1:
  230.  
  231. FOR i=1 TO 49
  232. satz%=i
  233. PRINT satz%
  234. INPUT"Wie oft gezogen";ha%
  235. INPUT"Wielange nicht gezogen";lz%
  236. LSET h$= MKI$ (ha%):LSET L$= MKI$ (lz%)
  237. PUT #1 ,satz% 
  238. NEXT
  239. INPUT "Woche",ha%
  240.  
  241. LSET h$= MKI$ (ha%)
  242. PUT #1, 50
  243. GOTO start
  244.  
  245.  
  246.  
  247. F10:
  248. CLOSE
  249. SYSTEM
  250.  
  251. f4:
  252. INPUT"Satznummer";i
  253. GET #1,i
  254. IF i = 50 THEN woche
  255. PRINT i;": ";;CVI(h$);" mal, ";CVI(L$); "Wochen nicht"
  256. INPUT "Wie oft gezogen";ha%
  257. INPUT "Wielange nicht gezogen";lz%
  258. LSET h$= MKI$ (ha%):LSET L$= MKI$(lz%)
  259. PUT #1,i
  260. GOTO yyy:
  261. woche:
  262. PRINT "Woche:";CVI(h$)
  263. INPUT "Welche Woche";ha%
  264. LSET h$=MKI$(ha%)
  265. PUT #1, 50
  266.  
  267. yyy:
  268. CLS
  269. LOCATE 10,30
  270. PRINT "<F1>    weiter"
  271. PRINT
  272. PRINT TAB(30)"<F10>   zurück zum Menü"
  273. xxx:
  274. a$=INKEY$
  275. IF LEN(a$)<>0 THEN a=ASC(a$)
  276. IF a$="" THEN xxx
  277. IF a <> 129 AND a<> 138 THEN xxx
  278. IF a = 129 THEN f4
  279. IF a = 138 THEN start
  280. GOTO xxx
  281.  
  282. f5:
  283. CLS
  284. FOR i =1 TO 10
  285. GET #1,i
  286. PRINT i;": ";;CVI(h$);" mal gezogen , ";CVI(L$); "Wochen nicht gezogen"
  287. PRINT
  288. NEXT
  289. INPUT"<Return>",ffff$
  290. FOR i =11 TO 20
  291. GET #1,i
  292. PRINT i;": ";;CVI(h$);" mal gezogen , ";CVI(L$); "Wochen nicht gezogen"
  293. PRINT
  294. NEXT
  295. INPUT"<Return>",ffff$
  296. FOR i =21 TO 30
  297. GET #1,i
  298. PRINT i;": ";;CVI(h$);" mal gezogen , ";CVI(L$); "Wochen nicht gezogen"
  299. PRINT
  300. NEXT
  301. INPUT"<Return>",ffff$
  302. FOR i =31 TO 40
  303. GET #1,i
  304. PRINT i;": ";;CVI(h$);" mal gezogen, ";CVI(L$); "Wochen nicht gezogen"
  305. PRINT
  306. NEXT
  307. INPUT"<Return>",ffff$
  308. FOR i =41 TO 49
  309. GET #1,i
  310. PRINT i;": ";CVI(h$);" mal gezogen, ";CVI(L$); "Wochen nicht gezogen"
  311. PRINT
  312. NEXT
  313. GET #1,50
  314. PRINT CVI(h$);". Woche"
  315. INPUT"<Return>",ffff$
  316. yy2:
  317. CLS
  318. LOCATE 10,30
  319. PRINT "<F1>    Druckerausgabe"
  320. PRINT
  321. PRINT TAB(30) "<F10>   zurück zum Menü"
  322. xxx2:
  323. a$=INKEY$
  324. IF LEN(a$)<>0 THEN a=ASC(a$)
  325. IF a$="" THEN xxx2
  326. IF a <> 129 AND a<> 138 THEN xxx2
  327. IF a = 129 THEN drucker1
  328. IF a = 138 THEN start
  329. GOTO xxx2
  330. PRINT
  331. PRINT
  332. PRINT
  333. INPUT"<Return>",ffff$
  334.  
  335. GOTO start
  336.  
  337.  
  338.  
  339. f6:
  340. INPUT"Satznummer"; i
  341. GET #1,i
  342. CLS
  343. LOCATE 10,1
  344. IF i =50 THEN PRINT CVI(h$);". Woche" :PRINT:PRINT:INPUT"<Return>",ffff$:GOTO yy1
  345. PRINT i;": ";CVI(h$);" mal gezogen, ";CVI(L$); "Wochen nicht gezogen"
  346. PRINT:PRINT:PRINT
  347. INPUT"<Return>",ffff$
  348.  
  349. yy1:
  350. CLS
  351. LOCATE 10,30
  352. PRINT "<F1>    weiter"
  353. PRINT
  354. PRINT TAB(30) "<F10>   zurück zum Menü"
  355. xxx1:
  356. a$=INKEY$
  357. IF LEN(a$)<>0 THEN a=ASC(a$)
  358. IF a$="" THEN xxx1
  359. IF a <> 129 AND a<> 138 THEN xxx1
  360. IF a = 129 THEN f6
  361. IF a = 138 THEN start
  362. GOTO xxx1
  363.  
  364.  
  365.  
  366.  
  367. f7:
  368. CLS
  369. PRINT
  370. GET #1,50
  371. PRINT"Die Gewinnzahlen der"; CVI(h$);". Woche"
  372. PRINT
  373. FOR i =1 TO 49
  374. GET#1,i
  375. IF CVI(L$)=0 THEN PRINT i;
  376.  
  377. NEXT
  378. PRINT:PRINT
  379. INPUT"<Return>",ffff$
  380. GOTO start
  381.  
  382.  
  383.  
  384.  
  385. f8:
  386. CLS
  387. LOCATE 5,30
  388. PRINT"Lotto V 3.5"
  389. PRINT:PRINT TAB(30)"© 1989 by"
  390. PRINT:PRINT TAB(30)"Jens Wilnat"
  391. PRINT:PRINT TAB(30)"Berliner Str. 31"
  392. PRINT:PRINT TAB(30)"3000 Hannover 91"
  393. PRINT:PRINT TAB(30)"Tel. 0511/467066"
  394. PRINT:PRINT
  395. INPUT"<Return>",ffff$
  396.  
  397.  
  398. GOTO start
  399. f9:
  400. CLS
  401. PRINT:PRINT:PRINT
  402. PRINT  "Dies ist die Version 3.5 meines Lottoprogramms."
  403. PRINT  "Ich glaube das Programm ist jetzt fertig."
  404. PRINT  "Wenn es noch Fehler hat dann lasst es mich bitte wissen."
  405. PRINT"Wenn Ihr gewinnt könnt Ihr mir ja etwas davon abgeben."
  406. PRINT
  407. PRINT  "Good luck ! ! !"
  408. PRINT
  409. PRINT "J.U.W.  14.05.89    23:45 Uhr "
  410. PRINT
  411. PRINT "P.S.  Falls die Datei nicht aktuell ist:"
  412. PRINT
  413. PRINT "In der Zeitung 'mach mit' vom Lottoverband findet Ihr die benötigten "
  414. PRINT "Daten. Die Zeitung gibt es kostenlos in jeder Lottoannahmestelle."
  415. PRINT
  416. PRINT "Dann mit Neuerfassung <F1> alle Daten eingeben."
  417. PRINT:PRINT
  418. INPUT"<Return>",ffff$
  419. GOTO start
  420.  
  421. drucker1:
  422. FOR i =1 TO 49
  423. GET#1,i
  424. LPRINT i;CVI(h$);CVI(L$)
  425. NEXT
  426. GET#1,50
  427. LPRINT CVI(h$);". Woche"
  428. GOTO start
  429.  
  430. drucker2:
  431.  
  432. LPRINT z(1); z(2);z(3);z(4);z(5);z(6)
  433. LPRINT lz(1); lz(2);lz(3);lz(4);lz(5);lz(6)
  434.  
  435. GOTO start
  436.  
  437.  
  438.  
  439.  
  440.  
  441. sort1:
  442. v=0
  443. FOR i = 1 TO 5
  444. IF z(i)<= z(i+1) THEN sor1
  445. h=z(i):z(i)=z(i+1):z(i+1)=h
  446. v=1
  447. sor1:
  448. NEXT i
  449. IF v=1 THEN sort1
  450.  
  451. RETURN
  452.  
  453.  
  454. sort2:
  455. v=0
  456. FOR i = 1 TO 5
  457. IF lz(i)<= lz(i+1) THEN sor2
  458. h=lz(i):lz(i)=lz(i+1):lz(i+1)=h
  459. v=1
  460. sor2:
  461. NEXT i
  462. IF v=1 THEN sort2
  463.  
  464. RETURN
  465.  
  466.